package com.school.fuyuan.business.model.vo;

import com.school.fuyuan.business.constants.InfoConstants;
import lombok.*;
import org.hibernate.validator.constraints.Length;

import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Pattern;
import java.io.Serializable;

/**
 * @author zrhong
 * @version 1.0
 * @date 2019/3/5 22:16
 * @description
 */
@Setter
@Getter
@AllArgsConstructor
@NoArgsConstructor
@ToString
public class AddInfoVo implements Serializable {

    @NotBlank(message = "来电时间不能为空")
    @Pattern(regexp = InfoConstants.DATE_TIME, message ="请输入正确的时间格式：yyyy-MM-dd HH:mm:ss")
    private String callTime;  //来电时间

    @Pattern(regexp = InfoConstants.SINGLE_MOBILE, message = "请输入正确的电话号码格式")
    @Length(min = 5, max = 20, message = "电话长度5-20之间")
    private String contactNumMain; //联系电话1

    private String parentNameMain;  //家长姓名1

    @Pattern(regexp = InfoConstants.SINGLE_MOBILE, message = "请输入正确的电话号码格式")
    @Length(min = 5, max = 20, message = "电话长度5-20之间")
    private String contactNumOther; //联系电话2

    private String parentNameOther;    //家长姓名2

    @NotBlank(message = "学生姓名不能为空")
    private String studentName; //学生姓名

//    @NotBlank(message = "在读学校不能为空")
    private String currentSchool;   //在读学校

//    @NotBlank(message = "在读年级不能为空")
    private String currentGrade;    //在读年级

    private String homeAddress; //家庭住址

    @NotBlank(message = "信息来源不能为空")
    private String infoSource;   //信息来源

    @NotBlank(message = "咨询内容不能为空")
    private String consultationContent; //咨询内容

    private String remark;  // 备注

    private String mathScore;   //数学分数

    @Pattern(regexp = InfoConstants.SUBJECTS_GRADE, message = "请输入正确的等级")
    private String mathGrade;   //数学等级

    private String englishScore;    //英语分数

    @Pattern(regexp = InfoConstants.SUBJECTS_GRADE, message = "请输入正确的等级")
    private String englishGrade;    //英语等级

    private String phyChemScore;    //物化分数

    @Pattern(regexp = InfoConstants.SUBJECTS_GRADE, message = "请输入正确的等级")
    private String phyChemGrade;    //物化等级

    @NotBlank
    private String infoState;   //信息状态

    @Pattern(regexp = InfoConstants.DATE_TIME, message ="请输入正确的时间格式：yyyy-MM-dd HH:mm:ss")
    private String appointment; //预约时间

    private String considerAdmissionTime;   //考虑入学时间

}
